using InventoryIssue.Dtos;
using InventoryIssue.ErrorCode;
using MediatR;

namespace InventoryIssue.API.Write.Application.Command.Allocate
{
    /// <summary>
    /// 创建入库记录命令
    /// </summary>
    public class CreateInboundRecordCommand : IRequest<APIResult<int>>
    {
        /// <summary>
        /// 调拨单号
        /// </summary>
        public int AllocateId { get; set; }

        /// <summary>
        /// 入库日期
        /// </summary>
        public DateTime InboundDate { get; set; }

        /// <summary>
        /// 入库数量
        /// </summary>
        public int Quantity { get; set; }

        /// <summary>
        /// 入库仓库
        /// </summary>
        public string InboundWarehouse { get; set; } = string.Empty;

        /// <summary>
        /// 入库库位
        /// </summary>
        public string? InboundLocation { get; set; }

        /// <summary>
        /// 入库操作人
        /// </summary>
        public string InboundOperator { get; set; } = string.Empty;

        /// <summary>
        /// 备注
        /// </summary>
        public string? Note { get; set; }
    }
} 